// 引入express
let express = require('express');
// 创建express实例
let app = express();

// 引入express-session
let session = require('express-session');
// 使用session的中间件
app.use(session({
    secret: 'Iversion', // 用来生成加密的内容
    resave: false,
    saveUninitialized: false, // 是指无论有没有session cookie，每次请求都设置个session cookie ，默认给个标示为 connect.sid
}));

/* 引入首页路由对象 */
let indexRouter = require('./router/indexRouter');
// 引入用户路由
let userRouter = require('./router/userRouter');
// 引进文章路由
let articleRouter = require('./router/articleRouter');
// 引入 body-parser
let bodyParser = require('body-parser');


/* body-parser对表单数据格式的设置 */ 
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());


/* 模板设置 */
// 设置模板类型
app.set('view engine','ejs');
// 设置模板文件的存放目录
app.set('views','./views');
// 设置静态文件托管 --  可设置多个
app.use('/node_modules',express.static('./node_modules'));


// 使用路由中间件
app.use(indexRouter);
app.use(userRouter);
app.use(articleRouter);

// 设置服务器监听端口
app.listen(3000,err => {
    if (err) throw err;
    console.log("The server is running at port 3000");
});